In a number of different disciplines, such as computer-aided geometric design (CAGD), it is necessary to model a transition between two adjoining surfaces, where such modeling is often referred to as a filleting or rounding operation. Generally, the purpose of such filleting or rounding operations is to provide a gentle, continuous transition or fillet from one surface to an adjoining surface. Such fillets, in turn, can benefit the manufacturing process of structures including the fillet, as a number of manufacturing processes utilize rounded cutters. Additionally, such fillets can alleviate safety concerns for sharp corners on structures, can provide increased structural integrity due to smooth transitions, and improve engineering performance including, for example, aerodynamic drag and low radar cross sections.
Consider, for example, surfaces 10 and 12 illustrated in FIG. 1a. One technique for eliminating the corner or seam between the two surfaces is to replace a portion of each surface with a fillet or transition that smoothly joins the two surfaces. One conventional technique for modeling such a fillet utilizes a rolling ball or sphere 14, as shown in FIG. 1b. In this regard, imagine a sphere of some radius rolling along the intersection of two surfaces such that the sphere remains in contact with both surfaces at a point of tangency. As shown in FIG. 1b, as the sphere rolls along the intersection of the surfaces, the sphere can sweep out a tube along the seam, with the portion of the tube that lies between the two surfaces and tangent to each modeling the desired fillet.
Despite its conceptual appeal, the rolling ball fillet suffers from a number of drawbacks. In this regard, the rolling ball does not meet the edges of both surfaces simultaneously unless the four vectors given by the surface normals and surface edge tangents all lie in the same plane. And for the surfaces 10 and 12 of FIG. 1a, the four vectors given by the surface normals and surface edge tangents do not all lie in the same plane. Thus, as shown by region 16 in FIG. 1c, the fillet surface modeled by the rolling ball stops short of the edge of one of the surfaces.
A second drawback with the rolling ball fillet technique is that such a technique produces a surface whose curvature does not agree with the adjoining surfaces in directions transverse to the common edge, even in the simplest cases. For example, modeling a fillet in accordance with the rolling ball fillet technique may result in a cylindrical fillet when the two adjoining surfaces are planes. The curvature in the direction perpendicular to the axis of this cylinder is the reciprocal of the radius of the cylinder, whereas it is zero for the planes. Hence, the curvature is discontinuous across the seam where the cylinder and the planes meet.